package com.jdk.mode.struct;

/**
 * @author jukg
 * @date 2023/08/25 16:14
 * @description 适配器模式   集成源方法，实现目标接口，从而达到适配
 */
public class Adapter {
}

interface AdapteeInterface{
    void m1();
    void m2();
}
//底层调用的方法
class Adaptee implements AdapteeInterface{

    @Override
    public void m1() {
        System.out.println("m1");
    }

    @Override
    public void m2() {
        System.out.println("m2");
    }
}

//对外暴漏的接口
interface  Target{
    void p1();
    void p2();
}

//实际干活的实现类
class AdapterClass extends Adaptee implements Target{

    @Override
    public void p1() {
        System.out.println("process.......");
        super.m1();
    }

    @Override
    public void p2() {
        System.out.println("process.........");
        super.m2();
    }
}
